mysql数据库系统管理 您所在的位置:网站首页 linux 审计日志 备份 mysql数据库系统管理

mysql数据库系统管理

2023-03-27 11:11| 来源: 网络整理| 查看: 265

mysql数据库安全管理包含如下方面

mysql数据库系统管理

禁止mysql以管理员账号权限运行 mysql应该使用非管理员账号运行,以普通账户安全运行mysqld

在mysql进程出现的时候防止影响系统

加固方法:在mysql的my.cnf配置文件中应该配置user=mysql

 

设置root用户口令并修改登录名,且不存在空密码账户

登录数据库

mysql - u root -p

控制台中执行:

SET PASSWORD FOR 'root'@'localhost'=PASSWROD('new_password')'

new_password为实际密码

为了更有效的改进root用户安全性,另一种方法是为其改名。因此,需要更新表用户中的mysql数据库。

USE mysql;UPDATE user SET user="another_username" WHERE user="root";FLUSH PRIVILEGES;

然后通过mysql控制台使用新的用户名

mysql -u another_username -p

数据库中所有的用户都应该配置密码,空密码允许用户在不适用密码的情况下登录。

加固方法:使用以下语句为用户设置一个密码

SET PASSWORD FOR@''=PASSWORD('')

检查是否存在用户为空密码

select * from mysql.user where user="";

在安全的系统中,不会返回什么信息。

配置合适的密码强度,最长使用期限小于90天

 数据库用户密码复杂性包括密码特征,如长度,大小写,长度和字符集

加固方法:添加如下配置到全局配置

plugin-load=validate_password.sovalidate_password_length=14validate_password_mixed_case_count=1validate_password_number_count=1validate_password_special_char_count=1validate_password_policy=MEDIUM

数据库提供了配置配置数据库密码的过期时间,用户密码过期时间应该设置为小于等于90天

加固方法:配置mysql RDBMS:

全局策略

SET GLOBAL default_password_lifetime=90 降低用户的数据库特权,只有管理员有完整的数据库访问权限

mysql数据库中,mysql.user和mysql.d表中列出了可以授予(或者拒绝)给mysql用户的各种权限。通常这些特权不应该对每个MYSQL用户都可用,而且通常只保留给管理员使用。

加固方法,列举审计程序结果统计的非管理员用户,对于每个非管理用户,使用revoke语句来适当删除权限。

Mysql.user表中的权限有:

file_priv:表示是否允许用户读取数据库所在的主机的本地文件

Process:表示是否允许用户查询所有用户的命令执行权限信息

Super_priv:表示用户是否有设置全局变量,管理员调试等高级别权限

Shutdown_priv: 表示用户是否可以关闭数据库

Create_user_priv:表示用户是否可以创建或者删除其他用户

Grant_priv:表示用户是否可以修改其他用户的权限。

应该确保只有数据库管理员才有上述权限,使用如下sql语句查看拥有各个权限的数据库账号

select user,host from mysql.user where File_priv='Y';select user,host from mysql.user where Process_priv='Y';

需要确保查询结果中不存在非管理员用户。

如果存在非管理员用户,使用如下命令进行权限回收:

REVOKE SHUTDOWN ON *.* FROM 'GRANT SELECT,INSERT ON mydb.* TO 'someuser'@'somehost'; 配置mysql日志便于审计

mysql应该配置日志功能,其中包含错误日志,二进制日志,慢查询日志,通过查询日志,更新日志等

加固方法:编辑my.cnf文件,如下设置:

log_error=/home/mysql.errlog_bin=mysql-binshow_query_log=1general_log=1log_slave_updates=1 错误日志

在对应的数据目录中,以主机名+.err命名的文件,错误日志记录的信息类型:

服务器运行中产生的错误信息 服务器在启动和停止的时候产生的信息 在从服务器上如果启动了复制进行的时候,复制进程信息也会被记录 记录了 event错误日志

相关配置

log_error=/mydata/data/mysql/test.com.err #指定错误日志的位置,默认是在数据目录下,mysql用户必须有写权限log_warning={0|1} #默认开启,服务器中运行的告警日志也会记录在错误日志中


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有